TRIX NOTES  9 Aug 86  phr  -*-outline-*-

* The Nu Machine

The GNU project has just received a TI Nu machine, one of a dozen or
so recently semi-abandoned by LCS.  The Concourse Computer Center got
several of the others.  Our machine has 2 MB of memory in 1/2 MByte
boards, an 84 MB 8" Fujitsu hard disk, a 1/4" cartidge tape drive of
some kind, and a 68010 processor board (speed unknown).  It seems to
be about as responsive as PREP, an 11/750 running 4.2bsd Unix.  It
currently has no ethernet board but I am trying to scrounge one.
Physically, the machine uses a bit less floor space than an 11/750, is
about half as tall, and weighs maybe 250 pounds.  It uses about 1 kW
of electricity which makes it a good space heater.  It is moderately
noisy.  It can run either Trix or Unix; the Trix kernel has no
provision for paging and the Unix kernel probably doesn't either.

It is physically possible to put in another 1MB of 1/2 meg cards into
our machine if the boards can be scrounged.  There is apparently no
such thing as a Nubus memory board of more than 1/2 MB despite what
the manual says (see below).  Jeff del Papa says that unmodified
Explorer memory will work in the machine but John V.  Wolfe says it
could take a lot of hacking to make it work.  Maybe somebody at LMI
would know for sure.  Explorer memory comes in cards up to 8 MB.

* Booting Trix

To bring up Trix, first turn on the Nu machine and monitor.  The Nu
machine power switch is the lever switch in the back.  The black
pushbutton next to it is the "reset" switch, used for emergency reboot
and such things.  The rotary switch next to that should always be set
to position "1".  Nobody I've asked knows why.

When the machine comes up you should get a ">>" prompt, which means
you are in the SDU monitor.  There is some flakiness in the keyboard
electronics that makes it send some characters like "10" on powerup or
if the cable is rattled.  Hit return and ignore it when it says "10:
not found".  Then type "uboot -k rsd trix" (see the SDU monitor manual
description of the uboot program).  "uboot" is the boot program; "-k
rsd" tells uboot to use the bitmap terminal as the system console
(otherwise, it will try to use the serial port, into which there is no
terminal plugged); "trix" means boot the trix kernel.  "uboot -k rsd
unix" will boot a Sys V Unix system.

Sometimes on powerup the screen will come up in a wedged mode where as
the screen scrolls, characters get xor'd in with the characters that
were already there instead of erasing the old characters.  There is a
bit in the software controlling whether the screen is in this mode or
not, that comes up randomly when you turn the machine on.  TRIX for
some reason does not initialize it.  There is a program called
"vidfix" in /usr/tbin that might fix it; I haven't had a chance to
try.  The other way to fix this problem is to boot Unix, which resets
the bit; then boot Trix again.

* Using Trix

Under TRIX, the bitmap monitor will come up under a primitive window
system.  To switch between windows, use the function keys F1 thru F4.
All four keys appear to do exactly the same thing---cycle between the
upper and lower window of a two-window screen, and a single window
that takes nearly the full screen.  There is a also a third, small
"messages" window near the top of the screen doesn't appear to do
anything.  Error messages, including messages from things like failed
system calls in Trix user programs, get splatted into the middle of
the screen in normal (non-reverse) video mode.

There is no analog to /etc/update; that is, cached disk blocks are not
automatically flushed by the system a few times a minute like on Unix.
If your reboot Trix always remember to type "sync" first.  Hitting
Control-Shift-Brkpause halts Trix and sends you back to the SDU
monitor.  The Brkpause key is at the upper right of the keyboard,
above the numeric keypad.

Trix sources live in /usr/trix/src; compiled commands are in /tbin and
/usr/tbin.  Versions of most of the common Unix commands are there.
Trix uses the same file system as Unix, but Unix binaries will not run
under Trix.  So you can't run the Unix commands that live in /bin and
/usr/bin.

Trix uses its own shell "tsh" which has pipeline and redirection
syntax similar to sh.  A rather nice history mechanism is provided by
the window system: the window system traps all control characters and
interprets the sensible ones as Emacs-like editing commands.  Thus, ^P
copies the last command to the current command line; ^P again brings
the one before that, etc.; you can use normal Emacs cursor motion and
editing commands (^D, ^K, etc) to edit the command line, then hit
return (even if the cursor is in the middle of the line) to execute
the command.  This works in other interactive programs such as "dc" as
well as in tsh.  There is a "history stack" that gets pushed when you
do an exec and popped when the program returns, so each program
maintains its own history.  I have no idea how a program arranges
to see the control characters.

Since the window system catches all the control keys (and flashes a
checkerboard pattern on the screen when you use one that doesn't have
another function), things like interrupt and quit are on function
keys.  They are not very advanced.  F6 in particular is the last
resort interrupt character.  It prints a thunderbolt character on the
screen and blows away everything running in the window where you type
it, thus erasing your history and sending you back to the root
directory.

* Programs

/usr/tbin/p prints 24 lines of the file you specify, waits for you to
hit return, types 24 more lines, etc.  It's a primitive version of
"more".

There is a stripped down Emacs-like editor in /usr/tbin/ee.  "ALT", in
the lower left corner of the Nu keyboard, works as a meta key.
C-x ? prints a list of commands.

"vx" is an H19 terminal emulator that has some provisions for getting
and putting files.  It is what the RTS people used to copy files
between Unix and Trix machines.  I don't at the moment know how to use
it.

* Hardware

Nu machine cards are triple height Eurocards.  Our machine has 12
slots, which are numbered 7 through 18 (what did you expect?) with
slot 18 on the left when you are in front of the machine looking in.
Slots 7 thru 15 are NuBus slots, and slots 13 thru 18 are Multibus
slots.  Slots 13 thru 15 can be used for both kinds of cards.
Multibus cards are put on special carriers that make them fit the
Eurocard connectors: the slots are all physically the same,
electrically different.  IF YOU PUT A CARD INTO THE WRONG KIND OF
SLOT, YOU CAN BURN IT OUT.  See the Nu machine installation manual and
maybe some of the hardware manuals before hacking this.

The Installation Manual alludes to the existence of 2 MB memory cards
(apparently RTS has never had any cards denser than 1/2 MB), and LMI
has made some 8MB cards that I'm told can work in our machine.  Anyone
know where to get some?

* Mailing list

There is a mailing list, info-gnu-trix@prep, for people interested
in hacking on this machine or on the kernel.

----------------

Local Variables:
backup-by-copying-when-linked:t
End:
